
    
    <template>
      <div>
        
        
      </div>
    </template>
    
    <script>
    import selectDepartment from '@/components/upCascadeInformation/selectDepartment.vue'
    export default {
      data() {
        return {
          form: {},
          orgList: [],
          dialogVisible: false,
          successfulCallback: null
        }
      },
      components: {
        selectDepartment
      },
    
      mounted() {},
    
      methods: {
    
        
        
        async getOrgList() {
          const res = await this.$api.findAll('northPlatform/orgCatalog', {
            northPlatformId: this.form.id
          })
          if (res.code === 200) {
            this.orgList = res.data || []
            this.dialogVisible = true
          }
        },
        setOrgList(orgList = []) {
          this.orgList = orgList
        },
        show(item) {
          return new Promise((resolve, reject) => {
            this.successfulCallback = resolve
            this.form = { ...item }
            this.getOrgList()
          })
        },
        async onSubmit() {
          const orgCatalogPush = this.form.orgCatalogPush
          if (orgCatalogPush === 1 && this.orgList.length === 0) {
            return this.$message.error(
                this.$t('youHaveNotSelectedTheOrganizationToPush')
            )
          }
          const res = await this.$api.northPlatform.orgCatalogSave({
            northPlatformId: this.form.id,
            orgCatalogPush: orgCatalogPush,
            orgIdList: orgCatalogPush === 1 ? this.orgList.map((v) => v.id) : []
          })
          if (res.code === 200) {
            this.$message.success(this.$t('operationSuccessful'))
            this.successfulCallback(this.form)
            this.onClose()
          }
        },
        onClose() {
          this.dialogVisible = false
        }
      }
    }
    </script>
    <style scoped lang="less" rel="stylesheet/less">
    div#driver-popover-item {
      display: none;
      position: absolute;
      margin: 0;
      padding: 14px 14px 14px 28px;
      border-radius: 5px;
      min-width: 250px;
      max-width: 300px;
      min-height: 174px;
      z-index: 1000000000;
      color: var(--hy-text-main);
      border: 1px solid var(--theme);
      background: var(--background);
      box-shadow: 0 0 10px 4px var(--backgroundv2);
    
      flex-direction: column;
      box-sizing: border-box;
    }
    div#driver-popover-item .driver-popover-tip {
      border: 5px solid var(--theme);
      content: '';
      position: absolute;
    }
    div#driver-popover-item .driver-popover-tip.bottom {
      bottom: -10px;
      border-color: var(--theme) transparent transparent;
    }
    div#driver-popover-item .driver-popover-tip.bottom.position-center {
      left: 49%;
    }
    div#driver-popover-item .driver-popover-tip.bottom.position-right {
      right: 20px;
    }
    div#driver-popover-item .driver-popover-tip.left {
      left: -10px;
      top: 10px;
      border-color: transparent var(--theme) transparent transparent;
    }
    div#driver-popover-item .driver-popover-tip.left.position-center {
      top: 46%;
    }
    div#driver-popover-item .driver-popover-tip.left.position-bottom {
      top: auto;
      bottom: 20px;
    }
    div#driver-popover-item .driver-popover-tip.right {
      right: -10px;
      top: 10px;
      border-color: transparent transparent transparent var(--theme);
    }
    div#driver-popover-item .driver-popover-tip.right.position-center {
      top: 46%;
    }
    div#driver-popover-item .driver-popover-tip.right.position-bottom {
      top: auto;
      bottom: 20px;
    }
    div#driver-popover-item .driver-popover-tip.top {
      top: -10px;
      border-color: transparent transparent var(--theme);
    }
    div#driver-popover-item .driver-popover-tip.top.position-center {
      left: 49%;
    }
    div#driver-popover-item .driver-popover-tip.top.position-right {
      right: 20px;
    }
    div#driver-popover-item .driver-popover-tip.mid-center {
      display: none;
    }
    div#driver-popover-item .driver-popover-footer {
      display: block;
      margin-top: 10px;
    }
    div#driver-popover-item .driver-popover-footer button {
      &:active {
        opacity: 0.6;
      }
      background: var(--background);
      color: #ffffff;
      border: 1px solid var(--auxiliary);
      border-radius: 4px;
      font-size: 12px;
    
      display: inline-block;
      padding: 3px 10px;
      text-decoration: none;
      font: 11px / normal sans-serif;
      cursor: pointer;
      outline: 0;
      zoom: 1;
      line-height: 1.3;
      letter-spacing: 1px;
    }
    .first-step-class {
      .driver-prev-btn {
        display: none !important;
      }
    }
    div#driver-popover-item .driver-popover-footer button.driver-disabled {
      color: var(--info);
      border: 1px solid var(--info);
      cursor: not-allowed;
    }
    div#driver-popover-item .driver-popover-footer .driver-close-btn {
      color: var(--auxiliary);
      border: 0px solid var(--info);
      padding: 3px 0px;
      float: left;
      letter-spacing: 2px;
    }
    div#driver-popover-item .driver-popover-footer .driver-btn-group,
    div#driver-popover-item .driver-popover-footer .driver-close-only-btn {
      float: right;
    }
    div#driver-popover-item .driver-popover-title {
      &::after {
        content: '';
        position: absolute;
        width: 4px;
        height: calc(100% - 4px);
        top: 50%;
        left: -12px;
        transform: translateY(-50%);
        background: var(--theme);
        border-radius: 2px;
      }
      font: 19px / normal sans-serif;
      margin: 0 0 5px;
      display: block;
      position: relative;
      zoom: 1;
      font-size: 14px;
      font-weight: bold;
      color: var(--main);
    }
    div#driver-popover-item .driver-popover-description {
      box-sizing: border-box;
      margin-bottom: 0;
      font: 14px / normal sans-serif;
      line-height: 1.5;
      font-size: 14px;
      color: var(--main);
      zoom: 1;
      flex-grow: 1;
      display: flex;
      flex-direction: column;
      div.content {
        flex-grow: 1;
      }
      ul {
        padding: 4px 0;
        li {
          &.select {
            background: var(--theme);
          }
          width: 8px;
          height: 8px;
          border-radius: 50%;
          background: var(--theme-05);
          margin: 0 4px;
        }
      }
    }
    .driver-clearfix:after,
    .driver-clearfix:before {
      content: '';
      display: table;
    }
    .driver-clearfix:after {
      clear: both;
    }
    .driver-stage-no-animation {
      -webkit-transition: none !important;
      -moz-transition: none !important;
      -ms-transition: none !important;
      -o-transition: none !important;
      transition: none !important;
      background: transparent !important;
      outline: 5000px solid rgba(0, 0, 0, 0.75);
    }
    div#driver-page-overlay {
      background: #000;
      position: fixed;
      bottom: 0;
      right: 0;
      display: block;
      width: 100%;
      height: 100%;
      zoom: 1;
      filter: alpha(opacity=75);
      opacity: 0.75;
      z-index: 100002 !important;
    }
    div#driver-highlighted-element-stage,
    div#driver-page-overlay {
      top: 0;
      left: 0;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
    }
    div#driver-highlighted-element-stage {
      position: absolute;
      height: 50px;
      width: 300px;
      background: #fff;
      z-index: 100003 !important;
      display: none;
      border-radius: 2px;
    }
    .driver-highlighted-element {
      z-index: 100004 !important;
    }
    .driver-position-relative {
      position: relative !important;
    }
    .driver-fix-stacking {
      z-index: auto !important;
      opacity: 1 !important;
      -webkit-transform: none !important;
      -moz-transform: none !important;
      -ms-transform: none !important;
      -o-transform: none !important;
      transform: none !important;
      -webkit-filter: none !important;
      -moz-filter: none !important;
      -ms-filter: none !important;
      -o-filter: none !important;
      filter: none !important;
      -webkit-perspective: none !important;
      -moz-perspective: none !important;
      -ms-perspective: none !important;
      -o-perspective: none !important;
      perspective: none !important;
      -webkit-transform-style: flat !important;
      -moz-transform-style: flat !important;
      -ms-transform-style: flat !important;
      transform-style: flat !important;
      -webkit-transform-box: border-box !important;
      -moz-transform-box: border-box !important;
      -ms-transform-box: border-box !important;
      -o-transform-box: border-box !important;
      transform-box: border-box !important;
      will-change: unset !important;
    }
    
    </style>
    